package com.healthy.reminders.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.healthy.common.core.annotation.Excel;
import com.healthy.common.core.web.domain.BaseEntity;

/**
 * 计划详情对象 plan_details
 * 
 * @author 束伟
 * @date 2024-03-29
 */
public class PlanDetails extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 计划详情ID */
    private Long id;

    /** 健康计划ID */
    @Excel(name = "健康计划ID")
    private Long healthPlanid;

    /** 详情类型（如饮食、锻炼、休息等） */
    @Excel(name = "详情类型", readConverterExp = "如=饮食、锻炼、休息等")
    private String detailType;

    /** 详细内容 */
    @Excel(name = "详细内容")
    private String detailContent;

    /** 开始执行日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始执行日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /** 结束执行日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束执行日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    /** 执行频率（如每天、每周等） */
    @Excel(name = "执行频率", readConverterExp = "如=每天、每周等")
    private String frequency;

    /** 备用列1 */
    @Excel(name = "备用列1")
    private String spareColumn1;

    /** 备用列2 */
    @Excel(name = "备用列2")
    private String spareColumn2;

    /** 备用列3 */
    @Excel(name = "备用列3")
    private String spareColumn3;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setHealthPlanid(Long healthPlanid) 
    {
        this.healthPlanid = healthPlanid;
    }

    public Long getHealthPlanid() 
    {
        return healthPlanid;
    }
    public void setDetailType(String detailType) 
    {
        this.detailType = detailType;
    }

    public String getDetailType() 
    {
        return detailType;
    }
    public void setDetailContent(String detailContent) 
    {
        this.detailContent = detailContent;
    }

    public String getDetailContent() 
    {
        return detailContent;
    }
    public void setStartDate(Date startDate) 
    {
        this.startDate = startDate;
    }

    public Date getStartDate() 
    {
        return startDate;
    }
    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }
    public void setFrequency(String frequency) 
    {
        this.frequency = frequency;
    }

    public String getFrequency() 
    {
        return frequency;
    }
    public void setSpareColumn1(String spareColumn1) 
    {
        this.spareColumn1 = spareColumn1;
    }

    public String getSpareColumn1() 
    {
        return spareColumn1;
    }
    public void setSpareColumn2(String spareColumn2) 
    {
        this.spareColumn2 = spareColumn2;
    }

    public String getSpareColumn2() 
    {
        return spareColumn2;
    }
    public void setSpareColumn3(String spareColumn3) 
    {
        this.spareColumn3 = spareColumn3;
    }

    public String getSpareColumn3() 
    {
        return spareColumn3;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("healthPlanid", getHealthPlanid())
            .append("detailType", getDetailType())
            .append("detailContent", getDetailContent())
            .append("startDate", getStartDate())
            .append("endDate", getEndDate())
            .append("frequency", getFrequency())
            .append("spareColumn1", getSpareColumn1())
            .append("spareColumn2", getSpareColumn2())
            .append("spareColumn3", getSpareColumn3())
            .toString();
    }
}
